package com.bbs.service;

import com.bbs.dto.DialogDto;
import com.bbs.pojo.dto.MessageDto;

import java.time.LocalDateTime;
import java.util.List;

public interface ChatService {
    boolean sendUserMessage(String senderId, String receiverId, String text);

    List<DialogDto> getDialogs(String senderId, String receiverId);

    /**
     * 获取指定时刻及其后的对话
     */
    List<DialogDto> getDialogsAfter(String senderId, String receiverId, LocalDateTime time);

    /**
     * 获取每个用户发送给该用户的消息中，最新的一条的未确认的。
     * 按时间排序。
     */
    List<MessageDto> getLastUserMessageGroupBySender(String receiverId);

    List<String> getAcknowledgedUsers(String receiverId);
}
